Versions:

  • 0.24.0
  • 0.23.1
  • 0.21.1
  • 0.13.0

sem is a semantic version control tool developed by Ataraxy Labs Inc., built on top of Git to provide entity-level change tracking rather than traditional line-based diffs. Currently at version 0.24.0, with four versions released to date, the software falls within the version control and developer tooling category, with particular relevance to code analysis and AI-assisted development workflows. Instead of reporting that certain lines changed between commits, sem identifies which entities changed—functions, methods, and classes—so that a change is described as, for example, "function blahh was modified" rather than "lines x-y changed." It accomplishes this by parsing source code with tree-sitter, extracting every function, class, and method as a discrete entity, and then performing diffs at that entity level. The tool supports 26 programming languages through tree-sitter grammars, making it applicable across a wide range of codebases and technology stacks. Beyond entity-level diffs, sem provides blame and impact analysis capabilities on top of Git, allowing users to understand not only what changed but also which entities are affected by a given modification. A key practical advantage is that sem works in any existing Git repository with no setup required, lowering the barrier to adoption for teams and individual developers alike. The tool is explicitly built for coding agents, positioning it as infrastructure for AI-driven development workflows in which machine consumers benefit from structured, entity-level information about code changes rather than raw textual diffs. Typical use cases include reviewing changes at a meaningful structural level, tracing the history of specific functions or classes, assessing the downstream impact of modifications, and supplying coding agents with semantically rich context about repository evolution. By layering semantic understanding on top of the ubiquitous Git workflow, sem aims to make version control output more informative for both humans and automated tools.

Tags: